যোগাশ্রয়ী প্রোগ্রাম (Functional Programming) হল একটি প্রোগ্রামিং প্যারাডাইম, যেখানে প্রোগ্রামিংয়ের মূল ভিত্তি হিসেবে ফাংশন বা যোগের উপর জোর দেওয়া হয়। এটি একটি ঘোষণামূলক (declarative) পদ্ধতি, যেখানে নির্দিষ্ট ধাপের পরিবর্তে কীভাবে ফলাফল অর্জন করা যায় তা বর্ণনা করা হয়। এই পদ্ধতির মূল ধারণা হচ্ছে "কীভাবে" কাজটি করতে হবে সেটি নির্ধারণ না করে বরং "কী" ফলাফল চাওয়া হচ্ছে সেটি নির্ধারণ করা।
যোগাশ্রয়ী প্রোগ্রামের কিছু গুরুত্বপূর্ণ বৈশিষ্ট্য নিচে দেওয়া হল:
একটি ফাংশন তখনই বিশুদ্ধ হিসেবে বিবেচিত হয় যখন এটি একই ইনপুটের জন্য সর্বদা একই আউটপুট দেয় এবং এর বাইরের কোনো স্টেট পরিবর্তন করে না। এটি যোগাশ্রয়ী প্রোগ্রামের মূল ভিত্তি, কারণ এটি প্রোগ্রামের পূর্বাভাসযোগ্যতা ও নির্ভরযোগ্যতা নিশ্চিত করে।
যোগাশ্রয়ী প্রোগ্রামিংয়ে ভেরিয়েবলগুলো অপরিবর্তনীয় হিসেবে ব্যবহৃত হয়, অর্থাৎ একটি ভেরিয়েবলের মান একবার নির্ধারণ করার পর তা আর পরিবর্তন করা যায় না। এটি ডেটার সুরক্ষা ও সহজে ত্রুটি সনাক্তকরণের জন্য সহায়ক।
উচ্চতর স্তরের ফাংশন এমন ফাংশন যা অন্য ফাংশনকে ইনপুট হিসেবে গ্রহণ করতে পারে বা আউটপুট হিসেবে ফেরত দিতে পারে। এই বৈশিষ্ট্য যোগাশ্রয়ী প্রোগ্রামে কোডকে আরো সংক্ষিপ্ত ও মডুলার করে তোলে।
যোগাশ্রয়ী প্রোগ্রামিংয়ে ফাংশনগুলোকে "প্রথম শ্রেণীর" নাগরিক হিসেবে বিবেচনা করা হয়, অর্থাৎ ফাংশনকে ভেরিয়েবল হিসেবে সংরক্ষণ করা, আর্গুমেন্ট হিসেবে পাঠানো এবং অন্য ফাংশন থেকে রিটার্ন করা যায়।
যোগাশ্রয়ী প্রোগ্রামিংয়ে এই ধারণাগুলো মিলিতভাবে প্রোগ্রামের পূর্বাভাসযোগ্যতা, কোডের সঠিকতা, এবং পুনর্ব্যবহারযোগ্যতা বৃদ্ধি করে।
Read more